Remote Debugging

Remote debugging lets you debug a program from another computer. You run WinDbg on one computer (the host) and install the program you are debugging on another (the target). You run a remote monitor program (WinDbgRm) on the target computer to control the program you are debugging. WinDbgRm communicates with WinDbg across a serial cable or across the network.

Remote debugging isolates WinDbg from the program being debugged so that errors in the program do not affect the debugger, and the debugger does not affect the target system. If the program crashes the remote system, your development system continues to run.

The remote monitor demands fewer system resources, and after starting and loading the program to be debugged, it does not use the file system. Therefore, the monitor has no effect on the resources that can change your program s behavior.

You can debug large programs or programs that destabilize the operating system. You can also debug programs on smaller systems that cannot support the full debugger. You can debug programs cross-platform. Some bugs that you cannot reproduce while running under the full debugger can appear under the remote monitor.

The process of debugging a program on a remote computer is almost the same as for local debugging. The only difference is in how you start the session. The following sections describe the hardware and files required for remote debugging and how to configure the debugger components on the host and target computers.